package com.dingreading.cloud.ssxcx.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mybatisflex.annotation.Column;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 会员
 */
@Data
public class MembersDto implements Serializable {


    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()")
    private Date addTime;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()", onUpdateValue = "now()")
    private Date editTime;

    /**
     * 出生日期
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date dateOfBirth;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date storeStatusTime;

    /**
     * uuid
     */
    @ApiModelProperty(value = "uuid")
    private String uid;

    /**
     * 真实全名
     */
    @ApiModelProperty(value = "真实全名")
    private String fullName;

    /**
     * 系统名称
     */
    @ApiModelProperty(value = "系统名称，不重复，末尾数字累加，如：李明2，逢4跳过")
    private String memberName;

    /**
     * 家长联系电话
     */
    @ApiModelProperty(value = "家长联系电话")
    private String mob;

    /**
     * 学校名称
     */
    @ApiModelProperty(value = "学校名称")
    private String schoolName;

    /**
     * 小区名称
     */
    @ApiModelProperty(value = "小区名称")
    private String houseName;

    /**
     * 性别 女:0，男:1，未知:2
     */
    @ApiModelProperty(value = "性别 女:0，男:1，未知:2")
    private Integer sex;

    /**
     * 学校ID
     */
    @ApiModelProperty(value = "学校ID")
    private Long schoolId;

    /**
     * 年级，每年自动增长，可以手动调整
     * 幼儿园：小:-3，中:-2，大-1；小学：一:1，二:2，三:3，四:4，五:5，六:6；初中：初一:7，初二:8；未知:0
     */
    @ApiModelProperty(value = "年级，每年自动增长，可以手动调整")
    private Integer grade;

    /**
     * 社团
     */
    @ApiModelProperty(value = "社团")
    private Integer classNum;

    /**
     * 小区ID
     */
    @ApiModelProperty(value = "小区ID")
    private Long subdistrictId;

    /**
     * 门店ID
     */
    @ApiModelProperty(value = "门店ID")
    private Long storeId;

    /**
     * 公司uid
     */
    @ApiModelProperty(value = "公司uid")
    private String corpUid;

    /**
     * 门店uid
     */
    @ApiModelProperty(value = "门店uid")
    private String storeUid;

    /**
     * 门店名称
     */
    @ApiModelProperty(value = "门店名称")
    private String storeName;

    /**
     * 会员级别
     */
    @ApiModelProperty(value = "会员级别")
    private Integer memberLevel;

    /**
     * 是否禁用
     * 1.启用 0.禁用
     */
    @ApiModelProperty(value = "是否禁用 1.启用 0.禁用")
    private Integer enabled;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    private String status;

    /**
     * 读书本数
     */
    @ApiModelProperty(value = "读书本数")
    private Integer readBooks;

    /**
     * 读书天数
     */
    @ApiModelProperty(value = "读书天数")
    private Integer readDays;

    /**
     * 读书字数
     * 单位：万字
     */
    @ApiModelProperty(value = "读书字数")
    private Double readWords;

    /**
     * 在店状态
     * 1.在店 2.离店
     */
    @ApiModelProperty(value = "在店状态:1.在店 2.离店")
    private Integer storeStatus;

    /**
     * 照片代码，用于人脸识别
     */
    @ApiModelProperty(value = "照片代码，用于人脸识别")
    private String photoCode;

    /**
     * 是否上传人脸识别
     * -1或null:未上传 1：已上传
     */
    @ApiModelProperty(value = "是否上传人脸识别:-1或null:未上传 1：已上传")
    private Integer faceUpStatus;

    /**
     * 人脸数据id（备用）
     */
    @ApiModelProperty(value = "人脸数据id（备用）")
    private String faceId;

    /**
     * 人脸样本img
     */
    @ApiModelProperty(value = "人脸样本img")
    private String faceImg;

    /**
     * 会员收费方式名
     */
    @ApiModelProperty(value = "会员收费方式名")
    private String costName;

    /**
     * 导读员id
     */
    @ApiModelProperty(value = "导读员id")
    private Long supervisorId;

    /**
     *
     */
    @ApiModelProperty(value = "")
    private String tmpServices;

    /**
     * 客户来源
     */
    @ApiModelProperty(value = "客户来源")
    private String customSource;

    /**
     * 客户来源备注
     */
    @ApiModelProperty(value = "客户来源备注")
    private String customSourceRemark;

    /**
     * 异业渠道uid
     */
    @ApiModelProperty(value = "异业渠道uid")
    private String channelUid;

    /**
     * 异业渠道名称
     */
    @ApiModelProperty(value = "异业渠道名称")
    private String channelName;

    /**
     * 数据来源 store:门店录入,xcx:小程序录入,markt:市场录入
     */
    @ApiModelProperty(value = "数据来源")
    private String source;

    /**
     * 转介绍人uid
     */
    @ApiModelProperty(value = "转介绍人uid")
    private String refererMemberUid;

    /**
     * 转介绍人姓名
     */
    @ApiModelProperty(value = "转介绍人姓名")
    private String refererMemberName;

    /**
     * 市场人员uid
     */
    @ApiModelProperty(value = "市场人员uid")
    private String refererStaffUid;

    /**
     * 市场人员昵称
     */
    @ApiModelProperty(value = "市场人员昵称")
    private String refererStaffName;

    /**
     * 市场人员电话
     */
    @ApiModelProperty(value = "市场人员电话")
    private String refererStaffPubPhone;

    /**
     * 市场人员电话
     */
    @ApiModelProperty(value = "市场人员电话")
    private String refererStaffPriPhone;

    /**
     * 市场人员真实姓名
     */
    @ApiModelProperty(value = "市场人员真实姓名")
    private String refererStaffFullName;

    /**
     * 跟进人信息
     */
    @ApiModelProperty(value = "跟进人uid")
    private String followStaffUid;
    @ApiModelProperty(value = "跟进人姓名")
    private String followStaffName;

    /**
     * 最近的跟进uid
     */
    @ApiModelProperty(value = "最近的跟进uid")
    private String lastFollowUid;

    /**
     * 最近的跟进时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date followTime;

    /**
     * 创建人uid
     */
    @ApiModelProperty(value = "创建人uid")
    private String addStaffUid;

    /**
     * 创建人姓名
     */
    @ApiModelProperty(value = "创建人姓名")
    private String addStaffName;

    private String addNickName;


    /**
     * 更新人uid
     */
    @ApiModelProperty(value = "更新人uid")
    private String lastStaffUid;

    /**
     * 更新人姓名
     */
    @ApiModelProperty(value = "更新人姓名")
    private String lastStaffName;

    private String lastNickName;

    /**
     * 线索状态
     * 0.线索 -1.无效 1.有效
     */
    @ApiModelProperty(value = "线索状态")
    private Integer validStatus;

    /**
     * 来源门店uid
     */
    @ApiModelProperty(value = "来源门店uid")
    private String fromStoreUid;

    /**
     * 来源门店名称
     */
    @ApiModelProperty(value = "来源门店名称")
    private String fromStoreName;

    /**
     * 微信号
     */
    @ApiModelProperty(value = "微信号")
    private String wxName;

    /**
     * 数据来源
     * 1.叮叮 2.名师堂
     */
    @ApiModelProperty(value = "数据来源")
    private Integer databaseType;

    /**
     * 名师堂用户uid
     */
    @ApiModelProperty(value = "名师堂用户uid")
    private String mstUid;

    /**
     * 密码
     */
    private String password;

    /**
     * 登录token
     */
    private String token;

    /**
     * 伙伴uid
     */
    private String agencyUid;

    /**
     * 手机号
     */
    private String telephone;

    /**
     * xcx昵称
     */
    private String nickname;
}
